﻿using DefenseQuestion.Application.UserApplication.Dto;
using DefenseQuestion.Domain;
using System.Collections.Generic;
using System.Threading.Tasks;

namespace DefenseQuestion.Application.UserApplication
{
    public interface IUserService
    {
        Task<ResultDto<User>> AddUserAsync(AddUserDto user);
        Task<ResultDto<bool>> DeleteUserAsync(int id);
        QusetionListResultDto<List<User>> GetUsersAsync(string userName, int pageIndex, int pageSize);
        Task<LoginResultDto> LoginAsync(LoginDto dto);
        Task<ResultDto<User>> UpdateUserAsync(AddUserDto user);
        ResultDto<User> FindUser(int Id);
        ResultDto<List<UserType>> GetUserType();
    }
}